package com.itheima.reggie.common;


import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

import java.sql.SQLIntegrityConstraintViolationException;


@Slf4j
@ResponseBody
@ControllerAdvice(annotations = {RestController.class,Controller.class})
public class GlobalExceptionHandler {

    @ExceptionHandler(SQLIntegrityConstraintViolationException.class)
    public R<String> excpt(SQLIntegrityConstraintViolationException e){

        log.error(e.getMessage());
        if (e.getMessage().contains("Duplicate entry")){
            String [] strings = e.getMessage().split("");
            String s = strings[2]+"已存在";
            return R.error(s);
        }
    return R.error("未知的错误");
    }

    @ExceptionHandler(CustomException.class)
    public R<String> ExceptionHandler(CustomException cus){
            log.error(cus.getMessage());
            return R.error(cus.getMessage());
    }
}
